pub fn new_birthday_probability(n: u32) -> f64 {
    if n <= 1 {
        return 0.0;
    }

    let mut prob_no_same_birthday = 1.0;
    for i in 0..n {
        prob_no_same_birthday *= (365 - i) as f64 / 365.0;
    }
    let prob_at_least_no_pair = 1.0 - prob_no_same_birthday;
    (prob_at_least_no_pair * 10000.0).round() / 10000.0
}
